package com.gxc.blogm.service;

import java.util.List;
import java.util.Map;

import com.gxc.blogm.domain.Comment;
import com.gxc.dbcore.dao.SqlDao;
import com.gxc.dbcore.util.PageInfo;
import com.gxc.dbcore.util.PageList;

public class CommentService {

	SqlDao sqlDao;

	public SqlDao getSqlDao() {
		return sqlDao;
	}

	public void setSqlDao(SqlDao sqlDao) {
		this.sqlDao = sqlDao;
	}

	/**
	 * 获取单个评论
	 * 
	 * @param id
	 * @return
	 */
	public Comment retrieve(String id) {
		return sqlDao.selectOne("blog.comment.retrieve", id);
	}

	/**
	 * 创建新评论
	 * 
	 * @param comment
	 * @return
	 */
	public int create(Comment comment) {
		return sqlDao.insert("blog.comment.create", comment);
	}

	/**
	 * 更新评论信息
	 * 
	 * @param comment
	 * @return
	 */
	public int update(Comment comment) {
		return sqlDao.update("blog.comment.update", comment);
	}

	/**
	 * 删除单个评论
	 * 
	 * @param id
	 * @return
	 */
	public int delete(String id) {
		return sqlDao.delete("blog.comment.delete", id);
	}

	/**
	 * 批量删除评论
	 * 
	 * @param id_array
	 * @return
	 */
	public int delete(String[] id_array) {
		int i = 0;
		for (String id : id_array) {
			i += sqlDao.delete("blog.comment.delete", id);
		}
		return i;
	}

	/**
	 * 列出所有评论
	 * 
	 * @param parameter
	 * @return
	 */
	@SuppressWarnings("rawtypes")
	public List listAll(Map parameter) {
		return sqlDao.selectList("blog.comment.list", parameter);
	}

	/**
	 * 分页列出评论
	 * 
	 * @param parameter
	 * @param pageInfo
	 * @return
	 */
	@SuppressWarnings("rawtypes")
	public PageList listPage(Map parameter, PageInfo pageInfo) {
		return sqlDao.selectPageList("blog.comment.list", parameter, pageInfo);
	}
}
